package com.ck.model.common;

/**
 * 节目
 *
 * @author linq
 */
public class Program {
    private Long programId;
    /**
     * 节目名称
     */
    private String programName;
    /**
     * 节目版本号
     */
    private String programVersion;
    /**
     * 商家唯一编号
     */
    private String companyCode;
    /**
     * 节目时长(毫秒)
     */
    private Integer programDuration;
    /**
     * 节目场景数
     */
    private Integer sceneNum;
    /**
     * 节目状态(0：已审批，1：待审批，2：待发布，3：已过期)
     */
    private Integer programStatus;
    /**
     * 节目修改时间
     */
    private Long updateTime;
    /**
     * 已下载终端数
     */
    private Integer downloadedDeviceNum;
    /**
     * 下载失败终端数
     */
    private Integer downloadFailDeviceNum;
    /**
     * 下载终端总数
     */
    private Integer downloadDeviceSum;
    /**
     * 添加时间
     */
    private String addTime;
    /**
     * 添加人
     */
    private String addUserName;
    /**
     * 过期时间
     */
    private Long overdueTime;
    /**
     * 不通过原因
     */
    private String noPassReson;
    /**
     * 添加状态（0待上传素材，1待投放设置，2待发布），默认0
     * 编辑节目时，状态为0则显示到上传素材页面,状态为1则显示到投放设置页面，状态为2则显示到预览发布页面
     */
    private Integer addStatus;
    /**
     * 数据状态（0正常，1逻辑删除）
     */
    private Integer dataStatus;
    /**
     * 节目大小（字节）
     */
    private Long programSize;
    /**
     * 节目压缩包存储地址(节目审核通过时生成)
     */
    private String zipUrl;

    /**
     * 节目json(关联ck_json表)
     */
    private Long jsonId;

    /**
     * 分辨率宽
     */
    private Integer wide;

    /**
     * 分辨率高
     */
    private Integer height;

    /**
     * 节目采用的模板ID(如果采用的是系统模板则存储，如果是用户模板则存储)
     */
    private Long programTemplateId;

    /**
     * 投放级别（1普通计划，2插播计划）
     */
    private Integer putinLevel;
    /**
     * 节目级别(0:插播，1:普1，2:普2，3:普3，4:普4)
     */
    private Integer commonLevel;

    public Long getProgramId() {
        return programId;
    }

    public void setProgramId(Long programId) {
        this.programId = programId;
    }

    public String getProgramName() {
        return programName;
    }

    public void setProgramName(String programName) {
        this.programName = programName == null ? null : programName.trim();
    }

    public String getProgramVersion() {
        return programVersion;
    }

    public void setProgramVersion(String programVersion) {
        this.programVersion = programVersion == null ? null : programVersion.trim();
    }

    public String getCompanyCode() {
        return companyCode;
    }

    public void setCompanyCode(String companyCode) {
        this.companyCode = companyCode == null ? null : companyCode.trim();
    }

    public Integer getProgramDuration() {
        return programDuration;
    }

    public void setProgramDuration(Integer programDuration) {
        this.programDuration = programDuration;
    }

    public Integer getSceneNum() {
        return sceneNum;
    }

    public void setSceneNum(Integer sceneNum) {
        this.sceneNum = sceneNum;
    }

    public Integer getProgramStatus() {
        return programStatus;
    }

    public void setProgramStatus(Integer programStatus) {
        this.programStatus = programStatus;
    }

    public Long getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Long updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getDownloadedDeviceNum() {
        return downloadedDeviceNum;
    }

    public void setDownloadedDeviceNum(Integer downloadedDeviceNum) {
        this.downloadedDeviceNum = downloadedDeviceNum;
    }

    public Integer getDownloadFailDeviceNum() {
        return downloadFailDeviceNum;
    }

    public void setDownloadFailDeviceNum(Integer downloadFailDeviceNum) {
        this.downloadFailDeviceNum = downloadFailDeviceNum;
    }

    public Integer getDownloadDeviceSum() {
        return downloadDeviceSum;
    }

    public void setDownloadDeviceSum(Integer downloadDeviceSum) {
        this.downloadDeviceSum = downloadDeviceSum;
    }

    public String getAddTime() {
        return addTime;
    }

    public void setAddTime(String addTime) {
        this.addTime = addTime == null ? null : addTime.trim();
    }

    public String getAddUserName() {
        return addUserName;
    }

    public void setAddUserName(String addUserName) {
        this.addUserName = addUserName == null ? null : addUserName.trim();
    }

    public Long getOverdueTime() {
        return overdueTime;
    }

    public void setOverdueTime(Long overdueTime) {
        this.overdueTime = overdueTime;
    }

    public String getNoPassReson() {
        return noPassReson;
    }

    public void setNoPassReson(String noPassReson) {
        this.noPassReson = noPassReson == null ? null : noPassReson.trim();
    }

    public Integer getAddStatus() {
        return addStatus;
    }

    public void setAddStatus(Integer addStatus) {
        this.addStatus = addStatus;
    }

    public Integer getDataStatus() {
        return dataStatus;
    }

    public void setDataStatus(Integer dataStatus) {
        this.dataStatus = dataStatus;
    }

    public Long getProgramSize() {
        return programSize;
    }

    public void setProgramSize(Long programSize) {
        this.programSize = programSize;
    }

    public String getZipUrl() {
        return zipUrl;
    }

    public void setZipUrl(String zipUrl) {
        this.zipUrl = zipUrl;
    }

    public Long getJsonId() {
        return jsonId;
    }

    public void setJsonId(Long jsonId) {
        this.jsonId = jsonId;
    }

    public Integer getWide() {
        return wide;
    }

    public void setWide(Integer wide) {
        this.wide = wide;
    }

    public Integer getHeight() {
        return height;
    }

    public void setHeight(Integer height) {
        this.height = height;
    }

    public Long getProgramTemplateId() {
        return programTemplateId;
    }

    public void setProgramTemplateId(Long programTemplateId) {
        this.programTemplateId = programTemplateId;
    }

    public Integer getPutinLevel() {
        return putinLevel;
    }

    public void setPutinLevel(Integer putinLevel) {
        this.putinLevel = putinLevel;
    }

    public Integer getCommonLevel() {
        return commonLevel;
    }

    public void setCommonLevel(Integer commonLevel) {
        this.commonLevel = commonLevel;
    }

    @Override
    public String toString() {
        return "Program{" +
                "programId=" + programId +
                ", programName='" + programName + '\'' +
                ", programVersion='" + programVersion + '\'' +
                ", companyCode='" + companyCode + '\'' +
                ", programDuration=" + programDuration +
                ", sceneNum=" + sceneNum +
                ", programStatus=" + programStatus +
                ", updateTime=" + updateTime +
                ", downloadedDeviceNum=" + downloadedDeviceNum +
                ", downloadFailDeviceNum=" + downloadFailDeviceNum +
                ", downloadDeviceSum=" + downloadDeviceSum +
                ", addTime='" + addTime + '\'' +
                ", addUserName='" + addUserName + '\'' +
                ", overdueTime=" + overdueTime +
                ", noPassReson='" + noPassReson + '\'' +
                ", addStatus=" + addStatus +
                ", dataStatus=" + dataStatus +
                ", programSize=" + programSize +
                ", zipUrl='" + zipUrl + '\'' +
                ", jsonId=" + jsonId +
                ", wide=" + wide +
                ", height=" + height +
                ", programTemplateId=" + programTemplateId +
                ", putinLevel=" + putinLevel +
                ", commonLevel=" + commonLevel +
                '}';
    }
}